package com.zyf.ppx.bean

import android.os.Parcel
import android.os.Parcelable
import java.io.Serializable

data class Connotion(
    var cursor: Cursor,
    var `data`: List<Data>,
    var hashtag_info: Any,
    var play_sound: Boolean,
    var story_info: StoryInfo,
    var tips: String
)

data class StoryInfo(
    var show_type: Int,
    var story_list: Any
)

data class Cursor(
    var has_more: Boolean,
    var loadmore_cursor: Long,
    var refresh_cursor: Long
)

data class Data(
    var ad_info: Any,
    var banner_info: Any,
    var button: Any,
    var cell_id: Long,
    var cell_id_str: String,
    var cell_type: Int,
    var comment: Any,
    var comment_info: Any,
    var dislike_options: List<DislikeOption>,
    var display_time: Int,
    var hashtag: Any,
    var item: Item,
    var pass_through: String,
    var reply_info: Any,
    var stickup: Boolean,
    var user_info: Any,
    var users_hashtag: Any
)

data class Item(
    var ancestor_comment_id: String,
    var ancestor_id: Any,
    var ancestor_schema: Any,
    var author: Author,
    var author_display_tags: Any,
    var comment_post_item: Boolean,
    var comments: List<Comments>,
    var content: Any,
    var cover: Any,
    var create_time: Int,
    var debug_info: Any,
    var default_schema: String,
    var duration: String,
    var expire_time: Any,
    var frozen_toast: String,
    var hot_info: Any,
    var item_id: Long,
    var item_id_str: String,
    var item_relation: ItemRelation,
    var item_type: Int,
    var jump_link: Any,
    var level: Any,
    var link: Any,
    var log_item_extra: String,
    var micro_app_id: Any,
    var note: Note,
    var origin_video_download: VideoItem,
    var origin_video_id: String,
    var post_source: Int,
    var rating: Int,
    var recreate_meta_info_list: List<Any>,
    var related_comment_id: String,
    var related_id: Any,
    var review_status: Any,
    var share: Share,
    var source: Any,
    var stage: Any,
    var stats: Stats,
    var status: Int,
    var text_schema: Any,
    var user_status: Any,
    var video: VideoData,
    var video_type: Any
)

data class Comments(
    var text:String,
    var comment_info:CommentInfo,
    var like_count:Int,
    var user: Author,
    var images:MuitImage,
    var video: VideoData,
    var reply_count:Int,
    var type:Int)
data class Comment(
    var text:String,
    var comment_info:CommentInfo)
data class CommentInfo(
    var text:String,
    var like_count:Int,
    var user: Author,
    var images:List<MuitImage>,
    var video: VideoData,
    var reply_count:Int,
    var type:Int
)
data class VideoData(
    var cover_image: CoverImage,
    var duration: Double,
    var hashtag_schema: List<HashtagSchema>,
    var text: String,
    var transport: Boolean,
    var transport_text: String,
    var video_download: VideoItem,
    var video_fallback: VideoItem,
    var video_height: Int,
    var video_high: VideoItem,
    var video_id: String,
    var video_low: VideoItem,
    var video_mid: VideoItem,
    var video_width: Int
)

data class VideoItem(
    var alarm_text: Any,
    var codec_type: Int,
    var cover_image: CoverImage,
    var definition: Int,
    var duration: Double,
    var height: Int,
    var uri: String,
    var url_list: List<Url>,
    var width: Int
)

data class CoverImage(
    var download_list: List<Download>,
    var height: Int,
    var is_gif: Boolean,
    var uri: String,
    var url_list: List<UrlStr>,
    var width: Int
)

data class ItemRelation(
    var is_bury: Boolean,
    var is_favorite: Boolean,
    var is_like: Boolean
)

data class Share(
    var compound_page_url: String,
    var content: String,
    var image_url: String,
    var link_text: String,
    var moments_strategy: Int,
    var moments_url: String,
    var qq_strategy: Int,
    var qq_url: String,
    var qzone_strategy: Int,
    var qzone_url: String,
    var share_text: String,
    var share_url: String,
    var title: String,
    var wechat_url: String,
    var weixin_strategy: Int
)

data class Note(
    var cover_image: Any,
    var hashtag_schema: List<HashtagSchema>,
    var multi_image: List<MuitImage>,
    var multi_thumb: List<MuitImage>,
    var text: String
):Serializable

data class MuitImage(
    var download_list: List<DownloadUrl>,
    var height: Int,
    var is_gif: Boolean,
    var uri: String,
    var url_list: List<UrlStr>,
    var width: Int
):Serializable


data class UrlStr(
    var url: String,
    var expires:Long
):Serializable

data class DownloadUrl(
    var url: String
):Serializable
data class HashtagSchema(
    var background_image: Any,
    var base_hashtag: BaseHashtag,
    var enter_num: Int,
    var extra: Any,
    var followers_num: Int,
    var icon: Any,
    var intro: Any,
    var is_follow: Boolean,
    var schema: String,
    var status: Any,
    var tag: Any,
    var works_num: Int
):Serializable

data class BaseHashtag(
    var activity_icon: ActivityIcon,
    var background_image: BackgroundImage,
    var extra: Any,
    var hashtag_type: Int,
    var icon: Icon,
    var id: Int,
    var id_str: String,
    var intro: String,
    var intro_schema: List<Any>,
    var jump_link: Any,
    var name: String,
    var status: Int,
    var tag: Any
)

data class BackgroundImage(
    var download_list: Any,
    var height: Int,
    var is_gif: Boolean,
    var uri: String,
    var url_list: List<Any>,
    var width: Int
)

data class Icon(
    var download_list: List<Download>,
    var height: Int,
    var is_gif: Boolean,
    var uri: String,
    var url_list: List<Url>,
    var width: Int
)

data class Url(
    var url: String
)

data class Download(
    var url: String
)

data class ActivityIcon(
    var color: String,
    var icon_image: IconImage,
    var name: String
)

data class IconImage(
    var download_list: List<Download>,
    var height: Int,
    var is_gif: Boolean,
    var uri: String,
    var url_list: List<Url>,
    var width: Int
)

data class Stats(
    var bury_count: Int,
    var comment_count: Int,
    var dubbing_count: Int,
    var go_detail_count: Int,
    var impression_count: Int,
    var like_count: Int,
    var play_count: Int,
    var share_count: Int
)

data class Author(
    var achievements: List<Achievement>,
    var author_info: AuthorInfo,
    var avatar: Avatar,
    var certify_info: CertifyInfo,
    var description: String,
    var followers_count: Int,
    var followings_count: Int,
    var god_comment_count: Int,
    var id: Long,
    var id_str: String,
    var is_followed: Any,
    var is_following: Any,
    var level: Int,
    var like_count: Int,
    var name: String,
    var profile_schema: String,
    var status: Int,
    var vote_count: Int
)

data class AuthorInfo(
    var author_item_type: Int,
    var author_type: Int,
    var level: Int,
    var owner: String,
    var user_id: Long,
    var username: String
)

data class Achievement(
    var achieve_type: Int,
    var description: String,
    var icon: String
)

data class CertifyInfo(
    var certify_type: Int,
    var description: String
)

data class Avatar(
    var download_list: List<Download>,
    var height: Int,
    var is_gif: Boolean,
    var uri: String,
    var url_list: List<Url>,
    var width: Int
)

data class DislikeOption(
    var dislike_desc: String,
    var dislike_type: Int,
    var icon_image: IconImage,
    var option_id: String
)